package com.fuze.service;

import com.fuze.domain.dto.ContractQueryDTO;
import com.fuze.domain.dto.DataGridView;
import com.fuze.domain.dto.SharingContractDTO;
import com.fuze.domain.model.SharingContract;

/**
 * @author sepc_
 * @date 5/19/2021 14:15
 * 分成方式的合同的业务处理接口
 */
public interface SharingContractService {

    /**
     * 根据合同的类型分页查询合同
     *
     * @param queryDTO 合同的类型以及分页条件的封装
     * @return 查询到的结果
     */
    DataGridView queryByType(ContractQueryDTO queryDTO);

    /**
     * 根据id查询分成方式的合同
     *
     * @param id id
     * @return 查询结果
     */
    SharingContract findById(Integer id);

    /**
     * 新增一条分成方式的合同
     *
     * @param sharingContractDTO 合同数据
     * @return 新增数据量
     */
    int add(SharingContractDTO sharingContractDTO);

    /**
     * 更新分成方式的合同数据
     * @param sharingContractDTO 合同数据
     * @return 更新的数据量
     */
    int update(SharingContractDTO sharingContractDTO);

    /**
     * 根据id删除合同数据
     * @param ids 合同数据
     * @return 删除的数据行数
     */
    int delete(Integer[] ids);
}
